草庐IT

security - Websockets、socket.io、nodejs 和安全性

全部标签

javascript - 如何使用 Aurelia.io 增强服务器端生成的页面?

我正在编写一个应用程序,其中一些部分作为SPA,一些页面在服务器端生成以用于SEO。我选择了Aurelia.io框架并使用enhance在我的页面上启用自定义元素的方法。但是我找不到在我的服务器端页面上使用aurelia特定模板指令和插值的最佳方法。让我们从一个例子开始。我的所有页面都包含一个动态标题。此header将是一个名为my-cool-header的自定义元素.此header将加载经过身份验证的用户并显示其名称,或者,如果当前没有用户经过身份验证,则会显示指向登录的链接。页面主体将在服务器端生成并缓存。所以,我们会有类似的东西:${user.name}Sign-inCachab

javascript - Websockets 在 Chrome 中不工作 (wss) : “handshake was canceled”

我目前正在DockerCloud上开发Websocket应用程序。重新部署我的应用程序时,现在我总是收到此错误消息:WebSocketconnectionfailed:WebSocketopeninghandshakewascanceled查看数据框时,我看到一个包含此数据的帧:(Opcode-1)在研究这个问题时,似乎与SSL/证书等有关。一些解决方案包括添加自签名证书。令人困惑的是,相同的证书似乎适用于https但不适用于wss:此外,在使用其他浏览器进行测试时,我发现Safari运行良好。所以我确信服务器实际上是在正确的端口上使用正确的证书运行的。只有chrome似乎有问题。我知

javascript - NodeJS - CORS 中间件 `origin` 未定义

我有一个应用使用corsnpm包作为中间件。我是这样设置的:if(process.env.NODE_ENV==='production'){varwhitelist=['http://mywebsite.com','https://mywebsite.com']varcorsOptions={origin:(origin,callback)=>{varoriginIsWhitelisted=whitelist.indexOf(origin)!==-1;console.log('ORIGIN:',origin);//=>undefinedcallback(originIsWhitelis

javascript - 是否可以无缝重定向 websockets?

我知道可以通过反向代理(如Nginx、HAproxy等)传递请求,但我需要将请求重定向到同一域后缀中的另一台公共(public)服务器。IE。从wss://example.com到wss://ws1.example.com。这是一个例子:我需要重定向来自Nginx或Java的请求。是否可以组织?我需要在客户端处理重定向还是这段代码就足够了?varsocket=newWebSocket("wss://example.com");socket.onopen=function(){alert("Connectionestablished.");};socket.onclose=functio

javascript - TypeScript 类型安全省略函数

我想在普通typescript中复制lodash的_.omit函数。omit应该返回一个对象,其中删除了某些属性,这些属性是通过先出现的对象参数之后的参数指定的。这是我最好的尝试:functionomit(obj:T,...keys:K[]):{[kinExclude]:T[k]}{letret:any={};letkey:keyofT;for(keyinobj){if(!(keys.includes(key))){ret[key]=obj[key];}}returnret;}这给了我这个错误:Argumentoftype'keyofT'isnotassignabletoparamet

javascript - 合并 socket.io 和 express.js session

我想将express.js和socket.iosession合并在一起。下面是我的代码(socket.io部分)vario=require('socket.io').listen(app);io.set('loglevel',1);io.sockets.on('connection',function(socket){console.log('clientconnected');client.send(client.id);//sendclientidtoclientitselfsocket.on('connect',function(){console.log(socket.id+'

javascript - 全日历.io : how to display one event per line in agendaWeek then mix all in one?

我使用Fullcalendar.iov2在我的agendaWeek模组中,我有事件,所有事件都显示在日广场的一行中。所以,我有更多的事件,然后是更薄的事件block。如何每行显示一个事件?就像在monthmod中一样。我有更多的事件,然后更高的日block将我(高度)。也许,很难使用像eventRender这样的函数,因为如果你检查.fs-event元素(web开发者工具),你会看到事件block使用了position:absolute;top:300px;left:33%...所以我不知道该怎么做。我想要这样的东西: 最佳答案 我

javascript - NodeJS 和 pg-promise,捕获 PostgreSQL 异常

我正在使用PostgreSQL后端运行NodeJS和pg-promise。我创建了自己的TRIGGER,它在某些情况下会抛出异常。到此为止一切正常。但是使用pg-promise我很难捕捉到错误的名称。使用这段代码:....catch(function(err){console.log(err);});我得到以下输出:[{success:false,result:{[error:vote_limit_exceeded]name:'error',length:80,severity:'ERROR',code:'P0001',detail:undefined,hint:undefined,p

javascript - 创建可在浏览器和 nodejs 中使用的 typescript 库

我想创建一个可以在浏览器和nodejs中使用的库。为了争论起见,假设这是我的图书馆:exportdefaultclassMyClass{publicgetString():string{return"Message";}}目前浏览器不支持ES2015模块,我不想在浏览器中依赖requirejs或任何其他模块加载器-我希望仅通过使用包含生成的.js文件来使用这个库脚本标签。感觉用内部模块就可以实现我想要的东西(不想污染全局命名空间)。但是,当我将代码包装在namespace/module中时,我很难将其编译为commonjs模块。实现我想要的目标的正确方法是什么?或者,可能是,作为一个t

javascript - Modernizr 检查完全排除 IE6、IE7、IE8 或 IE,识别 iOS 设备

是否有我可以使用Modernizr运行的任何检查(或检查组合),其中:IE6失败,但更高版本不会失败?IE7失败,但更高版本不会失败?IE8失败,但更高版本不会失败?所有IE都失败了?所有浏览器都会失败,但iOS设备不会失败?所有浏览器都会失败,但Android设备不会失败?我想使用Modernizr基于特征检测而不是用户代理嗅探来检查浏览器、设备?关闭-谢谢,收到消息了谢谢 最佳答案 功能检测的重点是与浏览器无关,您的应用程序/网站应该根据功能的存在而不是浏览器的存在来增强/降级。我们浏览器检测MS的原因是因为您可能需要使用CSS